<?php

namespace App\Http\Controllers;

use Darabonba\GatewaySpi\Models\InterceptorContext\response;
//use GuzzleHttp\Promise\Promise;
use http\Client;
use GuzzleHttp\Promise;
use Illuminate\Http\Request;

class ImageController extends Controller
{
    public function index(Request $request){
        if($request->ajax()){
            // 获取网页内容
            $html = file_get_contents($request->get('www'));

            // 匹配图片标签中的src属性
            preg_match_all('/<img[^>]+src="?\'?([^"\'>]+)"?\'?[^>]*>/i', $html, $matches);

            // 提取图片链接
            $imageUrls = $matches[1];
            return ['images'=>$imageUrls];
        }else{
            return view('image');
        }
    }
    public function zip(Request $request){
        $request=$request->get('imgs');
        // 创建目标文件夹（如果不存在）
        if (!file_exists('C:\Users\20185\Desktop\图片')) {
            mkdir('C:\Users\20185\Desktop\图片', 0755, true);
        }
        // 遍历图片链接并下载
        foreach ($request as $imageUrl) {
            $imageContent = file_get_contents($imageUrl);

            if ($imageContent !== false) {
                // 生成唯一的文件名
                $filename = 'C:\Users\20185\Desktop\图片' . '\downloaded_image_' . uniqid() . '.jpg';

                // 保存图片到本地
                file_put_contents($filename, $imageContent);

                echo "Image saved: $filename\n";
            } else {
                echo "Failed to download image: $imageUrl\n";
            }
        }

    }


}
